import java.sql.*;
//import sun.jdbc.odbc.JdbcOdbc;
public class Cproducto {

    private String Codigo;
    private String Nombre;
    private Double Precio_Venta;
    private String Caducidad;
    private int Minimo_Almacen;
    private int Existencia;
    private Object Estatus;
    private boolean Resultado;
    private String Mensaje;

// CONSTRUCTORES  ---------------------------------------------------------------------------------------------------   
    public Cproducto(String Codigo, String Nombre, Double Precio_Venta, 
            String Caducidad, int Minimo_Almacen, int Existencia, Object Estatus) {
        this.Codigo = Codigo;
        this.Nombre = Nombre;
        this.Precio_Venta = Precio_Venta;
        this.Caducidad = Caducidad;
        this.Minimo_Almacen = Minimo_Almacen;
        this.Existencia = Existencia;
        this.Estatus = Estatus;        
    }
    
    public Cproducto(String Codigo) {
        this.Codigo = Codigo;
    }

    public Cproducto() {
        Codigo = "";
        Nombre = "";
        Precio_Venta = 0.00;
        Caducidad = ""; 
        Minimo_Almacen = 0;
        Existencia = 0;
        Estatus = "";    
    }
    
// GETTERS ----------------------------------------------------------------------------------------------------------      

    public String getCaducidad() {
        return Caducidad;
    }

    public String getCodigo() {
        return Codigo;
    }

    public Object getEstatus() {
        return Estatus;
    }

    public int getExistencia() {
        return Existencia;
    }

    public String getMensaje() {
        return Mensaje;
    }

    public int getMinimo_Almacen() {
        return Minimo_Almacen;
    }

    public String getNombre() {
        return Nombre;
    }

    public Double getPrecio_Venta() {
        return Precio_Venta;
    }

    public boolean getResultado() {
        return Resultado;
    }
   
// SETTERS ----------------------------------------------------------------------------------------------------------------    
    
    public void setCaducidad(String Caducidad) {
        this.Caducidad = Caducidad;
    }

    public void setCodigo(String Codigo) {
        this.Codigo = Codigo;
    }

    public void setEstatus(String Estatus) {
        this.Estatus = Estatus;
    }

    public void setExistencia(int Existencia) {
        this.Existencia = Existencia;
    }

    public void setMensaje(String Mensaje) {
        this.Mensaje = Mensaje;
    }

    public void setMinimo_Almacen(int Minimo_Almacen) {
        this.Minimo_Almacen = Minimo_Almacen;
    }

    public void setNombre(String Nombre) {
        this.Nombre = Nombre;
    }

    public void setPrecio_Venta(Double Precio_Venta) {
        this.Precio_Venta = Precio_Venta;
    }

    public void setResultado(boolean Resultado) {
        this.Resultado = Resultado;
    }    
    
// AGREGA PRODUCTO ----------------------------------------------------------
    
    public void Agrega_Producto(){
        
    try{      
   
   Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
   Connection con=DriverManager.getConnection("jdbc:odbc:JavaSQL","sa","1qaZ2wsX");   
   int cuantos;
   PreparedStatement pst= con.prepareStatement("execute AgregaProducto ?,?,?,?,?,?,?");
   pst.setString(1,Codigo);
   pst.setString(2,Nombre);
   pst.setDouble(3,Precio_Venta);
   pst.setString(4,Caducidad); 
   pst.setInt(5,Minimo_Almacen);
   pst.setInt(6,Existencia);
   pst.setObject(7,Estatus);
   
   cuantos = pst.executeUpdate();
   
    if(cuantos>0){
       Resultado=true;
    }
    else{
       Resultado = false;
    }
    pst.close();
    con.close();
    }
    catch(SQLException sqle){
        Mensaje = sqle.getMessage();
    }
    catch (ClassNotFoundException ex) {
        Mensaje = ex.getMessage();
    }
}
    
// BUSCAR PRODUCTO --------------------------------------------------------------
    
    public void Busca_Producto(){
        
        try{
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            Connection con = DriverManager.getConnection("jdbc:odbc:JavaSQL","sa","1qaZ2wsX");
            PreparedStatement pst = con.prepareStatement("execute BuscaProducto ?");
            pst.setString(1,Codigo);
                    
            ResultSet rs = pst.executeQuery();
            
            if(rs.next()){            
                Resultado = true;                
                this.Codigo = rs.getString("CODIGO");
                this.Nombre = rs.getString("NOMBRE");
                this.Precio_Venta = rs.getDouble("Precio_Venta");
                this.Caducidad = rs.getString("Caducidad");
                this.Minimo_Almacen = rs.getInt("Minimo_Almacen");
                this.Existencia = rs.getInt("Existencia");
                this.Estatus = rs.getString("ESTATUS");     
            }
            else{
                Resultado = false;
                Mensaje = "Producto no existe";
            }
            pst.close();
            con.close();
            }
        catch(SQLException sqle){
        Mensaje = sqle.getMessage();
        }
        catch (ClassNotFoundException ex) {
        Mensaje = ex.getMessage();
    }        
    }    
}    